package com.shop.cereshop.app.param.wallet;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.constraints.DecimalMin;
import javax.validation.constraints.NotNull;
import java.math.BigDecimal;

/**
 * 充值VO
 * @author wang.yao
 * @date 2025-08-26
 */
@Data
@ApiModel(value = "RechargeVO", description = "钱包充值请求参数")
public class RechargeVO {

    // 用户ID从token获取，不需要前端传入
    private Long buyerUserId;

    @ApiModelProperty(value = "充值金额", required = true, example = "100.00", notes = "格式：数字，最小值：0.01，默认值：无")
    @NotNull(message = "充值金额不能为空")
    @DecimalMin(value = "0.01", message = "充值金额必须大于0")
    private BigDecimal amount;

    @ApiModelProperty(value = "支付方式", required = true, example = "1", notes = "1-微信支付 2-支付宝支付，默认值：无")
    @NotNull(message = "支付方式不能为空")
    private Integer paymentMethod;

    @ApiModelProperty(value = "备注")
    private String remark;
}
